/* 
入口文件模块
1. 连接数据库
2. 创建并启动服务
  注册各种中间件 => 路由器/静态资源/解析body参数/cors跨域的
  启动服务
*/





(async () => {
    //引入connect模块
    const connect = require('./db/connect');
    const express = require('express');
    const setCORS = require('./middlewares/setCORS')
    const loginRouter=require('./routers/loginRouter')
    const userRouter = require('./routers/userRouter')
    const verifyToken = require('./middlewares/verifyToken');
    //连接数据库 调用引入的模块(模块中暴露的是个函数)
    await connect()
    //连接成功后准备启动服务
    // console.log('准备启动服务')

    //创建应用对象
    const app = express();

    //使用各种中间件
    //CROS 跨域
    app.use(setCORS)
    //静态资源
    app.use(express.static('public'))
    //解析body参数
    app.use(express.json())
    app.use(express.urlencoded({extended:false}))
    //路由器
    app.use('/admin',loginRouter)
    app.use('/admin',verifyToken,userRouter)
    //启动服务
    app.listen(8082, () => {
        console.log('服务启动功能: http://localhost:8082')
    })
})()